const baseURL = "https://ai.keep1.net";
const collectBaseURL = ajax_request_domain;
const timeout = 7000;
const Token = "7fd9fbef-0146-49e5-abf7-843740a9568b";

// 统一封装
function ajaxRequest(
  url,
  type,
  params,
  contentType,
  successCallback,
  errorCallback
) {
  return $.ajax({
    url: collectBaseURL + url,
    type: type || "GET",
    data: params ? JSON.stringify(params) : null,
    cache: false,
    timeout: timeout,
    contentType: contentType || "application/json; charset=utf-8",

    beforeSend: (xhr) => {
      xhr.setRequestHeader("token", getLocalStorage("token"));
    },
    dataType: "json", // 假设我们期望返回的数据是JSON
    success: (response) => {
      // 请求成功时的回调
      if (successCallback && typeof successCallback === "function") {
        successCallback(response);
        return response;
      }
    },
    error: (error) => {
      // 请求失败时的回调
      if (errorCallback && typeof errorCallback === "function") {
        errorCallback(error);

        return error;
      }
      if (error.status === 500) {
        global_obj.div_mask();
        global_obj.win_alert_auto_close(
          "System error, please try again later",
          "fail",
          2000,
          undefined,
          0,
          function () {
            global_obj.div_mask(1);
          }
        );
        return false;
      }
      if (error.status === 401) {
        themes_obj.loginBox("index_type");
        return false;
      } else if (error.status === 403) {
        themes_obj.upgradeBox("index_type");
        return false;
      }
    },
  });
}

// 领英获客、企业搜索--行业列表
function getIndustryLists(params) {
  return ajaxRequest("/companies/get_industry_list", "POST", params, null);
}

// 领英获客、企业搜索--部门和职务职能列表
function getDepartmentLists(params) {
  return ajaxRequest("/companies/get_department_list", "GET", params, null);
}

// 领英获客、企业搜索--管理层列表
function getManageLists(params) {
  return ajaxRequest("/companies/get_manage_list", "GET", params, null);
}

// 领英获客--国家、州、城市
function getCountryLists(params) {
  return ajaxRequest("/companies/get_area_list", "POST", params, null);
}

// 领英获客-列表
function getEmployeeLists(params) {
  return ajaxRequest("/people/get_employee_list", "POST", params, null);
}

// 领英获客-收藏
function handleCollectItem(params) {
  return ajaxRequest("/people/user_employee_collect", "POST", params, null);
}

// 领英获客-职位搜索列表
function getEmployeeTitleLists(params) {
  return ajaxRequest("/people/get_employee_title_list", "POST", params, null);
}

// 领英获客--搜索公司列表
function getEnterpriseLists(params) {
  return ajaxRequest("/people/get_enterprise_list", "POST", params, null);
}

// 领英获客--详情
function getEmployeeDetail(params) {
  return ajaxRequest("/people/get_employee_detail", "POST", params, null);
}

// 领英获客--详情页--公司员工
function getEnterpriseEmployee(params) {
  return ajaxRequest("/people/get_employee_colleague", "POST", params, null);
}

// 领英获客--详情页--同名人员
function getSameNameEmployeeList(params) {
  return ajaxRequest(
    "/people/get_same_name_employee_list",
    "POST",
    params,
    null
  );
}

// 企业搜索--列表
function getEnterpriseList(params) {
  return ajaxRequest("/companies/get_enterprise_list", "POST", params, null);
}

// 企业搜索--国家、州、城市
function getAreaList(params) {
  return ajaxRequest("/companies/get_area_list", "POST", params, null);
}

// 企业搜索--技术列表
function getTechnologyList(params) {
  return ajaxRequest("/companies/get_technology_list", "POST", params, null);
}

// 企业搜索--收藏
function userEnterpriseCollect(params) {
  return ajaxRequest(
    "/companies/user_enterprise_collect",
    "POST",
    params,
    null
  );
}

// 企业搜索--邮编
function getPostalCodeList(params) {
  return ajaxRequest("/companies/get_postal_code_list", "POST", params, null);
}

// 企业搜索--详情页
function getEnterpriseDetail(params) {
  return ajaxRequest("/companies/get_enterprise_detail", "POST", params, null);
}

// 企业搜索--详情页-人员动态-部门
function getEmployeeMetricsDepartmentTotal(params) {
  return ajaxRequest(
    "/companies/get_employee_metrics_department_total",
    "POST",
    params,
    null
  );
}

// 企业搜索--详情页-人员动态-部门-总数
function getEmployeeMetricsAllTotal(params) {
  return ajaxRequest(
    "/companies/get_employee_metrics_all_total",
    "POST",
    params,
    null
  );
}

// 企业搜索--详情页-人员动态-部门-保留
function getEmployeeMetricsReserveTotal(params) {
  return ajaxRequest(
    "/companies/get_employee_metrics_reserve_total",
    "POST",
    params,
    null
  );
}

// 企业搜索--详情页-公司员工
function getEnterpriseEmployeeList(params) {
  return ajaxRequest(
    "/companies/get_enterprise_employee",
    "POST",
    params,
    null
  );
}

// 企业搜索--详情页-融资发展
function getEnterpriseFundingEventsList(params) {
  return ajaxRequest(
    "/companies/get_enterprise_funding_events_list",
    "POST",
    params,
    null
  );
}

// 企业搜索--详情页-导出数据
function buildEmployeeExportRecord(params) {
  return ajaxRequest(
    "/companies/build_employee_export_record",
    "POST",
    params,
    null
  );
}

// 企业搜索--详情页-推荐的企业列表
function getRecommendEnterpriseList(params) {
  return ajaxRequest(
    "/companies/get_recommend_enterprise_list",
    "POST",
    params,
    null
  );
}

// 企业搜索--详情页-企业图谱
function getEnterpriseSuperiorAndSubordinate(params) {
  return ajaxRequest(
    "/companies/get_enterprise_superior_and_subordinate",
    "POST",
    params,
    null
  );
}

// 广交会--选择类目
function getCategoryList(params) {
  return ajaxRequest("/canton_fair/get_category_list", "GET", params, null);
}

// 广交会-国家地区
function getCountryList(params) {
  return ajaxRequest("/canton_fair/get_country_list", "GET", params, null);
}

// 广交会-列表
function getCantonFairList(params) {
  return ajaxRequest("/canton_fair/get_canton_fair_list", "POST", params, null);
}

// 广交会-收藏
function userCantonFairCollect(params) {
  return ajaxRequest(
    "/canton_fair/user_canton_fair_collect",
    "POST",
    params,
    null
  );
}

// 广交会-详情
function getCantonFairDetail(params) {
  return ajaxRequest(
    "/canton_fair/get_canton_fair_detail",
    "POST",
    params,
    null
  );
}

// 广交会-详情--员工列表
function getCantonFairEmployeeList(params) {
  return ajaxRequest(
    "/canton_fair/get_canton_fair_employee_list",
    "POST",
    params,
    null
  );
}

// 领英收藏
function employeeCollect(params) {
  return ajaxRequest("/people/employee_collect", "POST", params, null);
}

// 企业收藏
function enterpriseCollect(params) {
  return ajaxRequest("/companies/enterprise_collect", "POST", params, null);
}

// 广交会收藏收藏
function cantonFairCollect(params) {
  return ajaxRequest("/canton_fair/canton_fair_collect", "POST", params, null);
}

// 获取询盘列表
function getInquiryList(params) {
  return ajaxRequest("/inquiry/get_inquiry_list", "POST", params, null);
}

// 解锁询盘记录
function initiateUserUnlockInquiry(params) {
  return ajaxRequest(
    "/inquiry/initiate_user_unlock_inquiry",
    "POST",
    params,
    null
  );
}

// 解锁询盘记录
function getInquiryBaseInfo(params) {
  return ajaxRequest("/inquiry/get_inquiry_base_info", "POST", params, null);
}

// 中国企业列表
function getCn_company(params) {
  return ajaxRequest("/cn-company/get_cn_company_list", "POST", params, null);
}

// 中国企业列表-详情
function getCn_companyDetail(params) {
  return ajaxRequest("/cn-company/get_cn_company_detail", "POST", params, null);
}

// 中国企业列表-地区列表
function getCn_companyAreaList(params) {
  return ajaxRequest("/cn-company/get_area_list", "POST", params, null);
}

// 中国企业列表-行业列表
function getCn_companyIndustryList(params) {
  return ajaxRequest("/cn-company/get_industry_list", "POST", params, null);
}

// 中国企业列表-收藏
function cn_company_collect(params) {
  return ajaxRequest("/cn-company/cn_company_collect", "POST", params, null);
}

// 中国企业列表-推荐公司
function get_recommend_cn_company(params) {
  return ajaxRequest(
    "/cn-company/get_recommend_cn_company",
    "POST",
    params,
    null
  );
}

// 领英获客、企业、广交会、导出
function build_employee_export_record(params) {
  return ajaxRequest(
    "/people/build_employee_export_record",
    "POST",
    params,
    null
  );
}
